package cn.wh.beans.factory.config;

import cn.wh.beans.BeansException;
import cn.wh.beans.factory.BeanFactory;

/**
 * @author: wh
 * @create: 2022-08-31 09:41
 * @description
 **/
public interface AutowireCapableBeanFactory extends BeanFactory {


    /**
     *执行 BeanPostProcessors 接口实现类的 postProcessBeforeInitialization 方法
     * @param existingBean
     * @param beanName
     * @return
     * @throws BeansException
     */
    Object applyBeanPostProcessorsBeforeInitialization(Object existingBean,String beanName) throws BeansException;


    /**
     *  执行 BeanPostProcessors 接口实现类的 postProcessorsAfterInitialization 方法
     * @param existingBean
     * @param beanName
     * @return
     * @throws BeansException
     */
    Object applyBeanPostProcessorsAfterInitialization(Object existingBean,String beanName)throws BeansException;




}
